Multi-codec camera system and image acquisition program

ABSTRACT

A multi-codec camera system includes a multi-codec camera that acquires video in the form of multiple compression-rate image data and a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, wherein when a predetermined object is detected from the video acquired by the multi-codec camera, the determination module selects image data at a compression rate according to the size of the detected object.

CROSS REFERENCES TO RELATED APPLICATIONS

The present invention contains subject matter related to Japanese Patent Application JP 2005-348641 filed in the Japanese Patent Office on Dec. 2, 2005, the entire contents of which being incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to a multi-codec camera system and an image acquisition program that use a multi-codec camera that acquires video in the form of multiple compression-rate image data so as to provide optimal image data according to various conditions to a client.

2. Description of the Related Art

In a network camera system that acquires video via a network in related art, a camera connected to the network selects the codec of acquired image data (for example, MPEG: Moving Picture Experts Group or JPEG: Joint Photographic Experts Group) and the selected codec image data is transferred to a server or a client (see JP-A-2003-204518, JP-A-2004-146959 and JP-A-2005-136613, for example).

On the other hand, in recent years, a multi-codec camera that supports multiple types of codec is available. By using such a camera, it is possible to build a system that handles multiple codec image data.

SUMMARY OF THE INVENTION

However, in a system using a multi-codec camera, although same video images can be simultaneously acquired using multiple types of codec, no system can effectively use these images. That is, no system can handle image data optimal to delivery according to various conditions, such as the acquired video and the network load, so that no system sufficiently takes advantage of the convenience of video acquisition by a multi-codec camera.

According to an embodiment of the invention, there is provided a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data and a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference. When a predetermined object is detected from the video acquired by the multi-codec camera, the determination module selects image data at a compression rate according to the size of the detected object.

According to the embodiment of the invention, since a predetermined object is detected from the video acquired by the multi-codec camera and image data at a compression rate according to the size of the detected object is selected, image data at an optimal compression rate for the size of the detected object can be transferred to a server and a client.

When the detected object is larger than a predetermined size, image data at a first compression rate (MPEG, for example) is selected, while when the detected object is smaller than the predetermined size, image data at a second compression rate (JPEG, for example), which is lower than the first compression rate, is selected. That is, a lower compression rate is selected for smaller detected object that demands higher quality, while a higher compression rate is selected for larger detected object that does not demand high quality, so as to give a high priority to the transfer speed.

According to another embodiment of the invention, there is provided a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data, and a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference. The determination module of the server selects image data at a compression rate according to the condition of the network load from the multiple compression-rate image data acquired by the multi-codec camera.

According to the embodiment of the invention, since image data at an optimal compression rate is selected for the condition of the network load, image data at a compression rate optimal to the successively varying conditions of the network load can be transferred to a server and a client.

When the condition of the network load is higher than a predetermined reference value, the determination module selects image data at a first compression rate (MPEG, for example), while when the condition of the network load is lower than the predetermined reference value, the determination module selects image data at a second compression rate (JPEG, for example) that is lower than the first compression rate. That is, image data at a higher compression rate is used for a higher network load, allowing a reduced network load.

According to another embodiment of the invention, there is provided a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data, a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, and a client connected to the network. The server saves the multiple compression-rate image data acquired by the multi-codec camera, and the client uses image data at a first compression rate when the client searches the image data saved in the server for image data that the client wants to acquire, while the client acquires image data at a second compression rate that is higher than the first compression rate, when the client acquires the searched image data from the server.

According to the embodiment of the invention, since multiple compression-rate image data are simultaneously saved in the server, when the client searches image data saved in the server, the client can quickly perform the searching, for example, by using image data at the lower compression rate captured as still images, while when the client acquires the searched image data from the server, the client can efficiently transfer image data at the higher compression rate captured as video images.

According to another embodiment of the invention, there is provided an image acquisition program executed on a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data and a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference. As program processes in the determination module, the image acquisition program includes the steps of detecting a predetermined object from the video acquired by the multi-codec camera and selecting image data at a compression rate according to the size of the detected object.

According to the embodiment of the invention, since a predetermined object is detected from the video acquired by the multi-codec camera and image data at a compression rate according to the size of the detected object is selected, image data at an optimal compression rate for the size of the detected object can be transferred to a server and a client.

According to another embodiment of the invention, there is provided an image acquisition program executed on a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data, and a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference. As a program process in the determination module of the server, the image acquisition program includes the step of selecting image data at a compression rate according to the condition of the network load from the multiple compression-rate image data acquired by the multi-codec camera.

According to the embodiment of the invention, since image data at an optimal compression rate is selected for the condition of the network load, image data at a compression rate optimal to the successively varying conditions of the network load can be transferred to a server and a client.

According to another embodiment of the invention, there is provided an image acquisition program executed on a multi-codec camera system including a multi-codec camera that acquires video in the form of multiple compression-rate image data, a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, and a client connected to the network. The image acquisition program includes the steps of, as a program process in the server, saving the multiple compression-rate image data acquired by the multi-codec camera, and, as a program process in the client, using image data at a first compression rate when the client searches the image data saved in the server for image data that the client wants to acquire, while acquiring image data at a second compression rate that is lower than the first compression rate, when the client acquires the searched image data from the server.

According to the embodiment of the invention, since multiple compression-rate image data are simultaneously saved in the server, when the client searches image data saved in the server, the client can quickly perform the searching, for example, by using image data at the lower compression rate captured as still images, while when the client acquires the searched image data from the server, the client can efficiently transfer image data at the higher compression rate captured as video images.

Therefore, the invention provides the following advantage. That is, in the system using the multi-codec camera, the system selects an optimal codec according to the condition, so that optimal image data in accordance with the network load and requests from the user can be quickly provided.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a first schematic configuration diagram of the multi-codec camera system according to this embodiment;

FIG. 2 is a second schematic configuration diagram of the multi-codec camera system according to this embodiment;

FIG. 3 is a configuration diagram showing modules necessary for the multi-codec camera system according to this embodiment;

FIG. 4 shows an exemplary GUI; and

FIG. 5 is a software module correlation diagram showing the relationship among the modules.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the invention will be described below with reference to the drawings.

Base Environment for this Embodiment

FIG. 1 is a first schematic configuration diagram of the multi-codec camera system according to this embodiment, and FIG. 2 is a second schematic configuration diagram of the multi-codec camera system according to this embodiment. That is, as shown in FIG. 1, a base environment for this embodiment is a system capable of managing one or more multi-codec cameras 10, which includes a multi-codec camera 10, a server 20 that acquires, analyzes and saves video from the multi-codec camera 10, a client 30 that remotely controls the server 20 and views the video, and a network N that connects the above components. The client 30 and the server 20 are equipped with functions for acquiring video from the multi-codec camera 10, switching the type of codec of the captured image or remotely controlling simultaneous acquisition via the network.

The multi-codec camera 10 herein is an image input apparatus capable of capturing image data processed at multiple types of compression rates. This embodiment employs an image input apparatus capable of capturing, for example, both high compression-rate MPEG-4 (Moving Picture Experts Group phase 4) image data and low compression-rate JPEG image data.

The client 30 is equipped with a function that changes the setting of the server 20, a function that acquires video accumulated in the server 20 and a video analysis result, and a function that switches to a mode in which video is directly acquired from the multi-codec camera 10.

As shown FIG. 2, this embodiment can also be applied to a system including a management client 30 a having both a server function and a client function, and a plurality of multi-codec cameras 10. This embodiment can also be applied to a system in which each multi-codec camera 10 has a determination module that normally belongs to a server and operates without involving any network.

System Necessary for this Embodiment

FIG. 3 is a configuration diagram showing modules necessary for the multi-codec camera system according to this embodiment. That is, the server 20 is equipped with a “client delivery module 21” that delivers video and video analysis results as well as video that the server 20 has to the client 30, a “server load analysis module 22” that checks the current load on the server 20, a “network condition analysis module 23” that checks the current condition of the network, a “video saving module 24” that saves video acquired from the multi-codec cameras 10 based on a preset rule, a “video acquisition rule determination module 25” that determines a video acquisition rule from the condition of the server 20, the condition of the network and the type of an alert, a “video acquisition module 26” that can simultaneously acquire multiple-codec video from the multi-codec camera 10, a “video analysis module 27” that can detect an object in motion and an object not in motion from the video, an “alert reception module 28” that can receive an alert from the multi-codec camera 10 or the “video analysis module 27”, a “video analysis result DB (database) 29 a” that saves video analysis results, and a “video DB 29 b” that saves video.

The client 30 is equipped with a “client reception module 31” that can receive video and video analysis results from the server 20 as well as the condition of the server 20, a “video acquisition mode switching module 32” that determines how to acquire video based on the received result, a “video acquisition module 33” that can acquire video from the multi-codec camera 10, a “search screen module 34” that displays a search screen, a “reproduction module 35” that reproduces accumulated images in the server 20 and a “client display module 36” that allows the client 30 to display imaging results.

The priority in the multi-codec setting can be manually set and FIG. 4 shows an exemplary GUI (Graphical User Interface) for performing the setting. In this exemplary GUI, from the top to bottom, it is possible to set which codec (for example, MPEG4 or JPEG) is given priority and which codec is used to save video, and set the frame rate, resolution, compression level and color level of the respective types of codec. In this embodiment, these parameters are automatically set according to the condition.

The above modules are implemented as program processes executed on the server 20 and the client 30, each of which includes a computer. Specific examples and roles of the modules applied in this embodiment will be described below.

[Video Acquisition Module]

The video acquisition module acquires video from the multi-codec camera 10.

[Client Delivery Module]

The client delivery module delivers video and video analysis results, the condition of the server 20, and instructions to the client 30.

[Server Load Analysis Module]

The server load analysis module analyzes the conditions of the CPU (Central Processing Unit) and disk access of the server 20.

[Network Condition Analysis Module]

The network condition analysis module analyzes the condition of the network load based on, for example, the planned frame rate at which information will be received from the multi-codec camera 10 and the actually receivable frame rate, as well as the response time (Ping) of communication with the multi-codec camera 10 and the client 30.

[Video Analysis Module]

The video analysis module detects an object in motion or an object not in motion from video and analyzes, for example, the size of the detected object.

[Video Saving Module]

The video saving module saves video from each of the multi-codec cameras 10 in the database using a pre-specified codec.

[Alert Reception Module]

The alert reception module receives an alert from the multi-codec camera 10 or the video analysis module to notify the contents of the alert to the “video acquisition rule determination module.”

[Video Acquisition Rule Determination Module]

The video acquisition rule determination module determines what codec should currently be used to acquire video from the multi-codec camera 10 and what codec should be used to deliver the video to the client 3 based on the load on the server 20, the communication condition of the network and the alert information.

[Video Analysis Result DB]

The video analysis result DB is a database that saves video analysis results. The data saved in the video analysis result DB is retrieved when the client 30 reproduces the saved video.

[Video DB]

The video DB is a database that saves video. The data saved in the video DB is retrieved when the client 30 reproduces the saved video.

[Client Reception Module]

The client reception module receives video, video analysis results, instructions from the server 20 and the condition of the server 20.

[Video Acquisition Mode Switching Module]

The video acquisition mode switching module switches the video acquisition mode of the client 30 to directly acquire video for display from the multi-codec camera 10 depending on the instruction from the server 20.

[Search Screen Module]

The search screen module acquires information necessary for displaying a search screen on the client 30 from the server 20.

[Reproduction Module]

The reproduction module acquires information necessary for displaying video accumulated in the server 20 on the client 30 from the server 20.

[Client Display Module]

The client display module displays video or video analysis results acquired from the server 20 or the multi-codec camera 10.

FIG. 5 is a software module correlation diagram showing the relationship among the modules. The operation of the system will be described with reference to the correlation diagram.

<Description of the Operation>

(1) The operation of switching the types of codec when an object in motion with a certain size (preset reference size) or greater (a closer object in motion) is detected, when an object in motion with a certain size or smaller (a farther object in motion) is detected, or when alert information is received from the camera. The flow of the operation will be described in (1-1) to (1-6) below.

(1-1) The “video acquisition module 26” acquires video in a pre-specified high-priority codec or in multiple types of codec from the multi-codec camera.

(1-2) The “video analysis module 27” detects an object in motion or an object not in motion based on the video.

(1-3) The “video analysis module 27” notifies the size of the object in motion or the size of the object not in motion to the “alert reception module 28.” When an alert is received from the multi-codec camera 10, the “alert reception module 28” acquires the contents of the alert (such as detection of an object in motion, detection of an object not in motion and detection of sound).

(1-4) The “alert reception module 28” notifies the contents of the alert to the “video acquisition rule determination module 25.”

(1-5) The “video acquisition rule determination module 25” sends an instruction to change how to acquire video to the “video acquisition module 26” according to the contents of the notification.

When an object in motion with a size greater than a certain value (or an object not in motion) is detected, or when sound detection is received from the multi-codec camera 10, the image acquisition method is switched to the codec by which MPEG video is delivered to the client, while when an object in motion (or an object not in motion) with a size smaller than a certain value is detected, the image acquisition method is switched to the codec by which JPEG video is delivered to the client. The image acquisition method can also be switched to the codec by which the video is saved in the [video DB 29 b] of the server. These settings can also be registered in advance.

(1-6) The “video acquisition module 26” changes the codec of the video acquired from the multi-codec camera 10 as necessary.

(2) The operation of switching the types of codec when the condition of the network load or the condition of the server load becomes worse. The flow of the operation will be described in (2-1) to (2-7) below.

(2-1) The “video acquisition module 26” acquires video in a pre-specified high-priority codec or in multiple types of codec from the multi-codec camera.

(2-2) The “network condition analysis module 23” determines the condition of the network load based on the frame rate setting, the currently receivable frame rate and the result of a network load check command. When the network load exceeds a predetermined threshold value, the condition of the network is notified to the “video acquisition rule determination module 25.”

(2-3) The “video acquisition rule determination module 25” sends an instruction to change how to acquire video to the “video acquisition module 26” according to the contents of the notification from the “network condition analysis module 23.”

When there is no (or very small) communication load on the network, the image acquisition method is switched to receive both JPEG and MPEG video, while when the communication load on the network is lower than a certain threshold value and an alert notification currently does not require audio, the image acquisition method is switched to receive JPEG video (MPEG video when audio is required). When the frame rate of JPEG image acquisition is lower than the set value or when the communication load on the network is higher than the certain threshold value, the image acquisition method is switched to receive MPEG video. When the communication load is even higher and exceeds another certain threshold value, the image acquisition method is switched to receive H264 codec video from the multi-codec camera 10. These settings can also be registered in advance.

(2-4) When the “server load analysis module 22” has determined that the server load is high, the “server load analysis module 22” sends a codec acquisition instruction for display to the client via the “client delivery module 21.”

(2-5) When the “client reception module 31” of the client receives the codec acquisition instruction sent from the “client delivery module 21” of the server, the “client reception module 31” notifies it to the “video acquisition mode switching module 32”, and the “video acquisition module 33” contained in the client starts acquiring display video directly from the multi-codec camera 10 (see the broken-line arrow in FIG. 5).

(2-6) The “client display module 36” merges the video with the video analysis result acquired from the “client reception module 31” and displays the video to the user.

(2-7) When the network load decreases, the “network condition analysis module 23” notifies the improved network condition to the “video acquisition rule determination module 25” and the “video acquisition rule determination module 25” switches the video acquisition method again.

(3) The operation when the server saves JPEG images for searching purposes and the client uses the JPEG images for searching. The flow of the operation will be described in (3-1) to (3-4) below.

(3-1) The “video acquisition module 26” acquires both MPEG and JPEG codec video from the multi-codec camera 10.

(3-2) The “video saving module 24” saves JPEG images regularly or whenever an object in motion is detected as thumbnail images used when the client performs searching. On the other hand, MPEG video may be always recorded.

(3-3) When the client sends a request for displaying the search screen, the “search screen module 34” acquires the thumbnail images from the server and the “client display module 36” displays the search screen.

(3-4) When the client selects a thumbnail image, the “reproduction module 35” acquires MPEG video from the server based on the imaging time recorded together with the thumbnail image and the “client display module 36” starts reproducing the MPEG video.

According to the embodiment described above, detection of an object in motion in the video, for example, detection of an object in motion within a predetermined distance from the camera or detection of sound can trigger alarm notification to automatically switch to the MPEG codec for transmission of audio and images. When the object in motion is outside the predetermined distance, the codec is switched to JPEG for higher resolution, which does not allow acquiring sound but correspondingly allows transmitting sharper video for each frame than in the MPEG codec.

Since both JPEG and MPEG codec video is saved in the server, by considering the network load and the network configuration, when the acquisition frame rate of JPEG images that the server acquires becomes lower than a certain value, higher priority can be given to the MPEG or H264 codec video while reducing the JPEG frame rate, allowing transmitting more seamless video.

In a system that manages a plurality of network cameras, when the server load becomes high and exceeds a certain threshold value, the server can acquire and record only MPEG video and the client can start JPEG video acquisition. In this way, the user can acquire higher quality video according to various conditions than currently achievable in a system acquiring video via a network. Also, by using a lower frame-rate JPEG image as a search key when captured images are reproduced, a search system for accumulated MPEG video can be easily built.

It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof. 

What is claimed is:
 1. A multi-codec camera system comprising: a multi-codec camera that acquires video in the form of multiple compression-rate image data; and a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, wherein when a predetermined object is detected from the video acquired by the multi-codec camera, the determination module selects image data at a compression rate according to the size of the detected object.
 2. The multi-codec camera system according to claim 1, wherein when a predetermined object is detected from the video acquired by the multi-codec camera and the detected object is larger than a predetermined size, the determination module selects image data at a first compression rate, while when the detected object is smaller than the predetermined size, the determination module selects image data at a second compression rate that is lower than the first compression rate.
 3. The multi-codec camera system according to claim 1, wherein when a predetermined object is detected from the video acquired by the multi-codec camera and the detected object is larger than a predetermined size, the determination module selects to acquire image data at a first compression rate together with audio data, while when the detected object is smaller than the predetermined size, the determination module selects image data at a second compression rate that is lower than the first compression rate.
 4. A multi-codec camera system comprising: a multi-codec camera that acquires video in the form of multiple compression-rate image data; and a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, wherein the determination module of the server selects image data at a compression rate according to the condition of the network load from the multiple compression-rate image data acquired by the multi-codec camera.
 5. The multi-codec camera system according to claim 4, wherein when the condition of the network load is higher than a predetermined reference value, the determination module selects image data at a first compression rate, while when the condition of the network load is lower than the predetermined reference value, the determination module selects image data at a second compression rate that is lower than the first compression rate.
 6. The multi-codec camera system according to claim 4, wherein a client is connected to the network, and when the condition of the server load is higher than a predetermined reference value, the server sends the client an instruction to acquire image data directly from the multi-codec camera via the network.
 7. A multi-codec camera system comprising: a multi-codec camera that acquires video in the form of multiple compression-rate image data; a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference; and a client connected to the network, wherein the server saves the multiple compression-rate image data acquired by the multi-codec camera, and the client uses image data at a first compression rate when the client searches the image data saved in the server for image data that the client wants to acquire, while the client acquires image data at a second compression rate that is higher than the first compression rate, when the client acquires the searched image data from the server.
 8. An image acquisition program recorded on a computer-readable medium and executed on a multi-codec camera system including: a multi-codec camera that acquires video in the form of multiple compression-rate image data; and a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, as program processes in the determination module, the image acquisition program comprising the steps of: detecting a predetermined object from the video acquired by the multi-codec camera; and selecting image data at a compression rate according to the size of the detected object.
 9. An image acquisition program recorded on a computer-readable medium and executed on a multi-codec camera system including: a multi-codec camera that acquires video in the form of multiple compression-rate image data; and a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference, as a program process in the determination module of the server, the image acquisition program comprising the step of: selecting image data at a compression rate according to the condition of the network load from the multiple compression-rate image data acquired by the multi-codec camera.
 10. An image acquisition program recorded on a computer-readable medium and executed on a multi-codec camera system including: a multi-codec camera that acquires video in the form of multiple compression-rate image data; a server that is connected to the multi-codec camera via a network and has a determination module that selects image data from the multiple compression-rate image data acquired by the multi-codec camera according to a predetermined reference; and a client connected to the network, the image acquisition program comprising the steps of: as a program process in the server, saving the multiple compression-rate image data acquired by the multi-codec camera; and as a program process in the client, using image data at a first compression rate when the client searches the image data saved in the server for image data that the client wants to acquire, while acquiring image data at a second compression rate that is lower than the first compression rate, when the client acquires the searched image data from the server. 